Viestijono

Viestijono (engl. message queue) on prosessien välinen kommunikaatiotapa, jota käytetään jossakin muodossa useissa eri käyttöjärjestelmissä.

Jonot on tyypillisesti toteutettu linkitettynä listana. Jonot on tarkoitettu asynkroniseen kommunikointiin.

Jonoja toteutetaan myös käyttöjärjestelmäriippumattomilla tavoilla ja käyttäjäavaruudessa (ytimestä riippumatta), esimerkiksi Java Message Service.

System V -tyylisessä Unix-rajapinnassa jonoja käsitellään järjestelmäkutsujen msgget() ja msgctl() avulla. Jonoihin voidaan lisätä ja poistaa viestejä funktioilla msgsnd() ja msgrcv().

POSIX-tyylisessä rajapinnassa jonoja käsitellään järjestelmäkutsulla mq_open(), ja viestejä lähetetään ja vastaanotetaan funktioilla mq_send() ja mq_receive().[1]

Windows toteuttaa viestijonon funktioilla DispatchMessage(), GetMessage() ja PostMessage().[2]

  1. mq_overview - overview of POSIX message queues Linux man-pages project. Viitattu 3.12.2017.
  2. About Messages and Message Queues Microsoft. Viitattu 3.12.2017.

Developed by StudentB